home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Libris Britannia 4
/
science library(b).zip
/
science library(b)
/
PROGRAMM
/
DB_CLIPP
/
1159.ZIP
/
AAAPRINT.ME
< prev
next >
Wrap
Text File
|
1987-03-17
|
75KB
|
1,381 lines
P ISR-20
P Intelligent Storage and Retrieval
P (Version 3.03)
P This program is a work of the Tennessee Valley
P Authority (TVA), U.S. Government, and is in
P the public domain.
P TVA MAKES NO REPRESENTATION OR WARRENTY OF ANY KIND WHATSOEVER, INCLUDING,
P BUT NOT LIMITED TO, REPRESENTATIONS OR WARRENTIES, EXPRESSED OR IMPLIED, OF
P MERCHANTABILITY, FITNESS FOR SPECIFIC USE OR PURPOSE, accuracy or
P completeness of processes, procedures, designs, definitions, instructions,
P information, or functioning of the program(s) and related material; TVA
P further expressly disclaims any knowledge or purpose for which the program(s)
P may be utilized or its applicability for such use, nor shall the fact of
P making it available constitute any such representation, warranty, or
P knowledge, nor does TVA assume any liability, responsibility, or obligation
P arising from the use or malfunctioning of the computer program(s) or related
P materials.
P ISR-20 is an easy to use system of twenty individual (If
P this version is a compiled version, the system will run
P without the dBASE III Plus operating system.) data bases
P which uses the dBASE III Plus operating system. ISR-20 is
P written in the dBASE III Plus language and makes use of many
P of its powerful commands to formulate a remarkable system of
P data bases, each of which is flexible enough to keep track
P of almost any type of information, according to your needs.
P Each of the twenty data bases has a maximum capacity of over
P 7.7 million records, or over 154 million records for the
P entire ISR-20 system. (Of course, the storage capacity of
P your computer system may limit the maximum number of records
P to less than the maximum capacity of your ISR-20 system.)
P You may set up each of the data bases to store and keep
P track of information which is completely different from any
P of the other data bases in the ISR-20 system. This is done
P when you tell ISR-20 exactly what types of information you
P want to store. In this way, it becomes a simple matter to
P set up your own information tracking system the way you want
P it in only a few minutes time. It is designed to track data
P in such a way as to minimize human error, both in data entry
P and retrieval. Thus, it is called "Intelligent Storage and
P Retrieval."
P ISR-20 is very different from most other data base systems
P because of four of its primary features:
P 1. The ISR-20 system will enable you to retrieve the
P desired records based upon only partially complete
P data. As long as you can remember something about
P the record, ISR-20 can usually find it for you.
P For instance, partial names, partial addresses,
P partial street names in addresses, partial street
P numbers, partial Social Security numbers, partial
P names of locations, and partial ID codes are all
P examples of information sufficient for ISR-20 to
P find the desired records. Multi-conditional data
P searches based upon either complete or partially
P complete data are also supported. A global "due
P date" search is available which will search all
P twenty data bases for all records with due dates
P within the range you specify and print them out
P according to the definitions which you have placed
P on each individual data base.
P 2. ISR-20 is a system of many data bases, and they are
P all user-definable.
P 3. The date recognition and date checking ability of
P ISR-20 extends into the 21st century. It is
P intelligent enough to know when you are using 21st
P century date and when you are using a 20th century
P date. This means that it can be used during the
P years just before and after the turn of the
P century with no modification. You only have to
P use the last two digits of the number for any year
P which ISR-20 can STORE. The limits for date
P STORAGE are 90 years in the past or the year 1900,
P whichever is the more recent date, and 9 years
P into the future or the year 1999, whichever is
P further into the future. For data searches,
P virtually any dates, almost without limitation may
P be used, provided that the format shown on the
P data entry page is adhered to. (Please Note: If
P the present year is the year 1993, then the date
P storage limits would be from the year 1903 to the
P year 2002. If the present year is 2010, then the
P limits would be from the year 1910 to the year
P 2019.)
P 4. ISR-20 is very forgiving with respect to data
P input. It is designed throughout to process your
P data entries and to "fix" errors in that input, if
P possible. For example, ISR-20 takes all spaces
P out of ID codes. A similar procedure is used for
P the interpretation of certain date entries and to
P discriminate between them and the dot commands
P sometimes used with them. Some of the error
P detection and data repair routines are done in the
P background so that, in certain cases, you may not
P know that you have made a mistake, because ISR-20
P may understand you correctly anyway.
P It is not necessary to have a full understanding of all the
P capabilities of ISR-20 in order to use it. However, the
P user must have a basic understanding of some of the more
P important features. In depth instructions are given later
P on. You may not have need for all twenty data bases. Just
P use as many as you need.
P ISR-20 sends a maximum of 131 characters and spaces per
P printed line to your printer. If your printer uses paper
P which is 8.5 inches wide, it still may be able to satisfy
P this requirement of being able to print 131 characters and
P spaces per printed line, if it can be set to a condensed
P print or small print mode.
P GENERAL OVERVIEW OF SYSTEM FEATURES
P ISR-20 divides all data for each data base into three major
P categories. These categories may be almost any categories
P you might need, and they may be given names according to
P your choice. Among the data entry fields in each of the
P categories, two of them are fields in which beginning and
P ending dates may be entered, if desired. Category 1 is
P different from categories 2 and 3 in that it does several
P logical date checks on each record. It also assumes that
P the time interval between the two dates entered is a
P monthly inverval (1 to 98 months).
P (PLEASE NOTE: THIS IS A GENERALIZED EXPLANATION WHICH MAY
P BE HARD TO UNDERSTAND BEFORE YOU ACTUALLY RUN THE DATA BASE
P SYSTEM.)
P Categories 2 and 3 may also be classified according to the
P your choice. Any date entries which are made in these
P categories are not checked at all. Therefore, you may
P enter any dates you wish into these categories. This may
P be used to advantage when the time interval between the
P dates entered is not a monthly interval.
P Category 3 is different from from categories 1 and 2 in
P that records which are classified as being in ONLY category
P 3 will be hidden from one of the types of data searches
P commonly used in the ISR-20 system. This is to your
P advantage if you do not want to see records in a certain
P major classification during certain record searches. (You
P may gain access to those records simply by choosing a
P different type of data search.) This category may, in many
P cases, be used for the storage of historical records. But
P it can be just about any category you desire. Category 3
P is also different in another way. Items in either
P categories 1 or 2 may also be classified to be in category
P 3. Categories 1 and 2 are normally completely exclusive of
P each other unless they are related to each other by having
P some or all of their records classified as also being in
P category 3.
P Each category is divided into three subcategories. You may
P also name these as you wish. The three subcategories
P may be whatever you want them to be. The system is
P flexible so that any record may be included in any or
P all of the three subcategories, if that is what you
P desire. The three subcategories must be the same for all
P three major categories.
P There are a number of pre-defined and user-defined commands
P which are used for automatic data manipulation and for
P category and subcategory classification. This feature is
P very time saving.
P ISR-20 is capable of handling both singular and duplicate
P record entries. Nearly instant access to singular records
P is available for both kinds of data organization when
P either one of the two ID codes available for each record is
P used. If more than one record has the same ID code, ISR-20
P will find the first record in the record block with equal
P ease.
P When the singular record option is used, ISR-20 prevents
P the input of duplicate records. In this mode it also
P allows you to restore records which you have just deleted.
P Either one or both of the ID code fields may be defined as
P general data entry fields instead of ID code fields.
P All general information fields and ID code fields in each
P data base can be searched. Data in the two ID code fields
P may searched either as ID codes or general information,
P regardless of how you have defined those fields.
P All records (with the exception of the data obtained via
P the global search routine, which may be printed only) may
P be printed, viewed on the screen, or both. Generally, this
P also includes all records which have just been added,
P modified, or deleted.
P ISR-20 keeps up with the last process date of all records.
P If you have a color screen, ISR-20 will allow you to select
P a color display.
P About once per month ISR-20 will ask you to allow it to do
P data reorganization for each data base to enhance speed in
P the retrieval of data and to decrease data storage space.
P It keeps up with each data base individually.
P If power failure or some other anomaly should ever occur
P and index files be damaged, provision has been made to
P rebuild the index files from scratch, if necessary.
P System errors resulting from the printer not being ready
P when you tell ISR-20 to print your selected records will be
P eliminated if you use the "ISR" command entry routine when
P you enter the ISR-20 system. This does not apply if you
P are simultaneously running another project on your computer
P in the background. Warnings in connection with whether or
P not the printer is ready are given throughout ISR-20 in
P case ISR-20 is run without using the normal "ISR" command
P entry routine. (PLEASE NOTE: THIS PROTECTIVE FEATURE IS
P NOT IMPLEMENTED ON THE PUBLIC DOMAIN VERSION OF THIS
P SYSTEM.)
P - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
P The following are examples of how data bases within ISR-20
P may be organized to effectively handle data.
P EXAMPLE 1
P Suppose that you are analyzing three major categories of
P a certain type of financial account within a certain
P financial institution. The three major categories of this
P specific account type could be the following:
P 1. Active accounts.
P 2. Overdue accounts.
P 3. Closed accounts.
P The three subcategories for each of the three major
P categories listed above could be:
P 1. Those accounts in which money is owed to the
P institution.
P 2. Those accounts in which the individual owing
P the money is attempting to pay what he owes.
P 3. Those accounts in which the individual owing
P the money has refused to pay what he owes.
P Obviously, subcategory 3 cannot apply to major category 1,
P and subcategory 2 cannot apply to major category 3.
P Therefore, it is not necessary to have three subcategories
P which can all apply to each of the major categories. Dates
P which were the previous due dates and the dates on which
P the next payments are due might be necessary information
P for major category 1. In addition, you may wish to keep
P the name, address, Social Security number, yearly income,
P and the amount owed in connection with each person with an
P account.
P In major category 2, date checking is not as important
P since it is already established that the account is
P overdue. Dates may be used if desired. However, ISR-20
P will not check them in this category.
P In major category 3, date checking is probably least
P important since these are closed accounts. Dates may be
P used, but ISR-20 will not check them in this category. In
P addition, one of the common types of record searches within
P ISR-20 will automatically ignor those records which are
P EXCLUSIVELY in category 3. This is convenient, because it
P is unlikely that you would often be as interested in closed
P accounts as you would be in the open accounts. However,
P records in category 3 are still fully accessible since a
P number of the types of record searches do include those
P records in category 3.
P EXAMPLE 2
P Suppose you are in charge of all equipment inventory and
P maintenance in ten of your company's plants. Some of the
P equipment is maintained at the respective plants, and some
P of it is calibrated, repaired, or stored at other
P locations. The three major categories of equipment might
P then be:
P 1. That equipment which is in active use.
P 2. That equipment which is NOT presently in use.
P 3. That equipment which is maintained by the plant
P where it is used.
P The three subcategories might be:
P 1. That equipment which is being calibrated.
P 2. That equipment which is being repaired.
P 3. That equipment which is in storage.
P In this case all three subcategories are logically
P compatible with major categories 2 and 3, but none of them
P can apply to major category 1. Those records which are
P EXCLUSIVELY in category 3 will be automatically ignored by
P one of the common types of record searches within ISR-20.
P This may be convenient if you do not wish to include
P category 3 in certain record searches. Perhaps you do not
P wish to always see those records on your printout since the
P respective plants have primary responsibility for the
P maintenance of that equipment in category 3. If for some
P reason, you wish to keep track of that equipment in
P category 3 to the same degree as you do for categories 1
P and 2, you may recategorize that equipment in category 3 to
P categories 1 or 2. At the same time you may also
P categorize it to be in category 3 through the use of a
P USER-DEFINED dot command. In this way, you may force
P specific records in category 3 to be processed as though
P they were in category 1 or 2, according to your choice. As
P an alternative, they may be viewed as records which are in
P two major categories at the same time, either categories 1
P and 3 or categories 2 and 3.
P Other information may be stored, such as the equipment name
P or type, the location of the equipment, the ID number or
P numbers on the equipment, the date on which it was last
P calibrated or repaired, and the date (if any) on which it
P is due to be calibrated again.
P You may not have need of all three major categories or all
P three subcategories. Just use those which you need.
P You may use the data entry fields to store the information
P you want concerning each record. You may name the fields
P according to what you feel is appropriate.
P SYSTEM INSTALLATION
P First of all, make one or more backup copies of this
P diskette (your installation diskette). To install your
P ISR-20 system onto your fixed disk, just place this
P diskette in drive "A:" and type the command "INSTALL". You
P will then see the instructions for installing the ISR-20
P system. In addition, certain other other valuable
P information is given. After you have read the directions
P resulting from your typing the command "INSTALL", just type
P the command "INSTALL" a second time, followed by a space,
P and then the drive designation of your fixed disk. After a
P few minutes your ISR-20 system will be installed.
P Please note: You should have the DOS commands "COMMAND.COM",
P "BACKUP.COM", and "RESTORE.COM" in either the root directory or
P somewhere in the path which you define when you enter the ISR-20
P system. If you have multiple hard disks, you may either use
P them each as storage for a separate system of ISR-20 data bases
P (by installing the ISR-20 system on each of them individually),
P or you may use them all as a single giant data base system. To
P use them all as a single giant data base system, see the special
P instructions to programmers at the end of these instructions.
P You may see how to define any DOS path you wish in the SYSTEM
P ACCESS section below.
P SYSTEM UPDATE
P If this version, version 3.03, is newer than an older version
P of ISR-20 which you may have, you may update the version on your
P hard disk without destroying any of your data base files by
P placing your new installation diskette in drive "A:" and then
P typing the command "UPDATE". You will then see the instructions
P for updating your system.
P SYSTEM ACCESS
P The ISR-20 system may be accessed from the root directory
P of your fixed disk by typing the command "ISR" followed by
P a space and then the PATH and the NAME of the directory in
P which your copy of dBASE III PLUS is. For instance, if
P your copy of dBASE III PLUS is in a directory named
P "DATABASE", and if the directory "DATABASE" is a directory
P directly branching off the root directory, then the PATH
P and the DIRECTORY name would be: "\DATABASE". Access into
P your ISR-20 system would be acheived by typing the
P following:
P ISR \DATABASE
P (Please note: If this is a compiled version, then "ISR"
P followed by a space and ANY VALID PATH NAME will enable you
P to run the system. Example: "ISR \".)
P The access system may ask you a question before it allows
P you to gain entry into the ISR-20 system. Just remember,
P you may always answer that question correctly (if you are
P asked) by simply pressing the RETURN key. The default
P answer will then be used. You may also define a printer
P buffer, if you wish. For more details, just type the
P command "ISR". If you wish to have ISR-20 to access the DOS
P commands from the main directory on hard disk "C:" when you are
P operating from disk "D:", you would just add ";C:\" to the path
P definition when you enter the system. Corresponding to the
P above example you would type:
P ISR \DATABASE;C:\
P Using this approach, you may define any path which you want.
P SETTING UP DATA BASES IN YOUR ISR-20 SYSTEM
P ISR-20 is user-friendly and primarily menu driven. This
P means that many of its functions are self-explanatory.
P This tutorial will guide you through the reasoning to be
P used in the initial set-up of a data base in the ISR-20
P system. After you learn the fundamentals, you may use your
P own creativity in setting up other data bases to be most
P effective in handling your data.
P The first page which you will see when you have entered
P ISR-20 is a page which spells out the present year, month,
P day of the month, and the name of the day of the week.
P This information is CRITICAL to the correct operation of
P ISR-20. Therefore, it gives you a chance to correct the
P date if the system date of the computer is incorrect.
P The second page (the main menu of ISR-20) lets you have
P access to any of your twenty data bases. Selection "U"
P gives you other options, and selection "V" allows you to
P exit ISR-20. It should be noted that data loss may occur
P if you exit ISR-20 using any other method than through
P "QUIT"ting ISR-20 using one of its menu selections. For
P instance, it is possible to exit ISR-20 by either resetting
P the computer or by turning the computer off. Either of
P these methods may result in data loss IF ISR-20 is in the
P middle of a data modification or data addition routine.
P To set up your data base, you must choose "U" for other
P options. The next page will give you five other options.
P We want to select option "A". This will give you another
P menu, allowing you to choose the data base which you wish to
P set up. Let us choose "G" for DATA BASE 8. Now we will
P follow the logic of example 2 above. After having chosen
P "G" for DATA BASE 8, you should see the "DATA BASE OPTIONS
P ENTRY PROCEDURE" page. The first option is the data base
P name. We will call it "Equipment Inv & Rep", which stands
P for the name "Equipment Inventory and Repair."
P The cursor should now be in position for the column 1 name.
P Let us name column 1 "Equipment Type".
P Press the RETURN key and the cursor will be in position for
P the column 2 name. Let us call this column "Manufacturer".
P Press the RETURN key and the cursor will be in the tiny
P blank just to the right of the phrase "ID code ?". You
P should put either a "Y" or an "N" in this blank to tell
P ISR-20 whether or not you want the information you put in
P column 2 to be treated as an ID code. In this case, since
P we want the manufacturer's name in this column, we will put
P an "N" in this blank.
P The cursor will now be in position for us to give a name to
P column 3. We will name column 3 "Control No.". Press the
P RETURN key and the cursor will be in the "ID code ?" blank.
P Again, you should press either "Y" or "N" to let ISR-20
P know if you want the information you place in column 3 to
P be treated as an ID code. Obviously, since the control
P number for each equipment item is an ID code, it should be
P treated as an ID code. Therefore, we will put "Y" in the
P blank. The cursor will now be in the blank just to the
P right of the phrase "DUP REC ?". This is the blank which
P you use to tell ISR-20 whether or not there is a
P possibility that there will be more than one item with the
P same control number. If that possibility exists, put a "Y"
P in the blank. However, it is very likely that most
P companies have a separate control number for each item.
P There are occasions for duplicate records. For instance, if
P concerning a given record, current information is to be
P maintained in category 1 and historical information
P concerning that record is to be maintained in categories 2 or
P 3, it may be necessary to have identical ID codes for
P separate records. Any records may also be related to each
P other by using the same ID code for those records in either
P columns 2 or 3. In the case of this particular exercise,
P however, we will put an "N" in the blank. ISR-20 has a nice
P protective feature in that if you put an "N" in the "DUP REC
P ?" blank, it will be impossible to enter a duplicate record.
P If you try to do so, ISR-20 will change the code you entered
P in column 3 (in this case the control number) by adding a
P question mark on to the front of the code. This prevents a
P duplicate code from being entered. Also ISR-20 will let you
P know about it if this should ever occur, and it provides a
P way for you to easily make corrections. You simply have
P ISR-20 to search for all records (in the record modification
P mode) which have the phrase "?" in column 3. Please note
P that column 3 will have the new name which you will have
P named it. You may search for the records in this way from
P the menu page which is entirely devoted to conditional record
P searches. You may then choose to delete those records by
P removing the information in column 1 of each of those
P records.
P The cursor will now be in the column 4 blank. This is the
P column which you use to enter beginning dates if you need a
P beginning date for the record. We will call column 4
P "DT.Serv." for "Date Serviced", or the date the equipment
P was serviced.
P The cursor will now be in the column 5 blank. This is the
P column which you use to enter ending dates if you need an
P ending date for the record. We will call column 5 "Service
P Due Date", which means the date the equipment is due to be
P serviced again.
P Press the RETURN key and the cursor will now be in the
P column 6 blank. We will name this blank "Plant Name",
P representing the name of the plant where the equipment is
P located.
P Press the RETURN key and the cursor will be in the column 7
P blank. Column 7 expresses the time interval between the
P beginning date and the ending date. We will call the time
P interval "Ser.Int." for "Service Interval."
P The cursor will now be in the blank just to the right of
P the phrase "Name for bottom (horizontal) column:." We will
P name this "Serv.Info.", representing service information on
P the piece of equipment. You have 131 spaces to enter the
P service information. This horizontal column is used to
P store data which is generally to lengthy to fit in a narrow
P column.
P The cursor will now be in the "category 1:" blank. This is
P the category in which dates are checked. However, there
P must be a monthly interval (1 to 98 months) between the
P beginning and ending dates. Each record may or may not
P have a different monthly interval. In this case, we will
P assume that each piece of equipment does have a monthly
P service interval. Therefore, we will name this category
P "Operational", meaning that equipment which is presently
P being used.
P Press the RETURN key and the cursor will be in the
P "category 2:" blank. In this category, dates are not
P checked. There is no requirement to even use dates unless
P you need them. We will name this category "Being
P Serviced". The time interval between the dates in this
P category is always designated as 99 months. The "99" is
P not the real time interval. It is only a category
P designator. All records with "99" for the monthly interval
P are in category 2. This category is most conveniently used
P for records in which dates have either less meaning than
P those records in category 1 or no meaning at all. If you
P have records in which the time intervals between the
P beginning and ending dates are not monthly intervals, then
P you will have to use category 2 and/or category 3 for those
P records. These categories have no particular disadvantage
P except that ISR-20 will not check the dates for you.
P The next category is "category 3." We will name this
P category "In-house Ser.", meaning that the equipment is
P serviced by the plant at which it is located. Category 3
P is ideal for this situation because one of the types of
P record searches in ISR-20 (a special type of "date due"
P multi-conditional record search) is designed to ignor all
P records which are EXCLUSIVELY in category 3. As in
P category 2, dates may or may not be used, and ISR-20 does
P not check them in this category.
P The next blank is the dot command abbreviation which you
P may assign to category 3. You will use this abbreviation
P in data entry pages to tell ISR-20 that you want a certain
P record which is in either category 1 or 2 to be included in
P category 3. We will make the abbreviation ".IH." stand for
P "In-house Ser.", which is category 3. For example, you can
P make ISR-20 force a record which is in either categories 1
P or 2, to also be classified as being in category 3 through
P the use of the dot command representing category 3. This
P can be very useful with certain types of logical
P configurations for data bases. (This was discussed in
P Example 2 above.) Therefore, this option is provided. For
P example, if you wish to keep up with this equipment to the
P same degree as is available in category 1, even though it
P is the plant and not you that is primarily responsible for
P servicing it, you may simultaneously place it in categories
P 1 and 3 (with the use of the dot command for category 3).
P A record is made to be EXCLUSIVELY in category 3 by making
P the time interval "0". The "0" is used as a marker or
P category designator for all records which are exclusively
P in category 3.
P The next blank is used to name subcategory 1. We will name
P this subcategory "Retired". This subcategory could be
P applied to that equipment in categories 2 or 3 which is not
P considered valuable enough to calibrate or repair, or
P perhaps it is being sold or junked. Please note that there
P is a data search routine which will access all records in
P both subcategories 2 and 3 together. Therefore, if it is useful
P to you to search for all records in any two subcategories
P together, you should make those subcategories 2 and 3.
P You probably would not have any real need to access the
P records for that equipment which is retired and that
P equipment which is either "In calibration" or "In repair"
P together, but you might want to look at the records of that
P equipment which is "In calibration" or "In repair"
P together. Therefore, subcategory 1 is chosen for that
P equipment which is retired.
P The next blank is for the dot command representing
P subcategory 1. We will make this dot command ".RET.", for
P "Retired".
P The next blank is used to name subcategory 2. We will name
P this subcategory "In calibration", which applies to that
P equipment which is being calibrated.
P The dot command for subcategory 2 could be named ".C.".
P The name for subcategory 3 could be "In repair". The dot
P command for subcategory 3 could be ".R.".
P Please note: If you wish to delete the name of any category,
P or subcategory, it is suggested that you place a period in
P place of the name. If you replace the name with spaces,
P ISR-20 will replace those spaces with a default name when it
P stores the definitions for that data base.
P The next blank is for the title you wish to see on the
P printout. We could make it "EQUIPMENT INVENTORY AND
P REPAIR".
P The next blank is provided for you to tell ISR-20 what line
P spacing should be used for the printouts for this
P particular data base. You may have your choice from 1 to 9.
P The information which you place in the next blank will
P determine how much paper will come out of the printer when
P it finishes printing. This one option is the only option
P which is overridden by the global search routine mentioned
P earlier. The global search routine will advance the paper
P by one line at the end of the printing procedure for each
P data base in which there are records to be printed. It will
P then eject two pages at the end of the entire procedure.
P ISR-20 will ask you if you are finished entering
P information. If you press "Y" for "Yes" it will store the
P options you have made.
P PLEASE NOTE: General information columns may be used for any
P kind of information, even more dates if you wish. With some
P thought, the user may be very creative.
P LOGIC AND POWER OF USER-DEFINED COMMANDS
P This section is NOT necessary for the majority of users.
P Therefore, unless you are a programmer, you may wish to skip
P it.
P It is NOT required that dot commands have dots at all. The
P dots (or periods) simply serve serve as a help to the user to
P keep the commands logically separated.
P In the above example, if the dots had NOT been used with the
P user-defined commands, the commands would be:
P 1. "IH" for category 3, "In-house Ser."
P 2. "RET" for subcategory 1, "Retired"
P 3. "C" for subcategory 2, "In Calibration"
P 4. "R" for subcategory 3, "In Repair"
P In this case, if you ask ISR-20 to search for all records in
P subcategory "In Repair", ISR-20 would in addition find all
P the records in subcategory "Retired". This is so because the
P user-defined command "R" for subcategory "In Repair" is found
P inside the user-defined command "RET". That is, "R" is found
P inside "RET". This is very good if you wish all records in
P subcategory "Retired" to be related to all records in
P subcategory "In Repair" whenever ISR-20 searches for all
P records in subcategory "In Repair". If dots had been used,
P the two commands would be ".RET." and ".R.". As you can see,
P ".R." is not found inside ".RET.". Therefore, with the dots
P included, the commands are kept separate. However, by using
P the above logic, two or more of the user-defined dot commands
P may be related in the way that you wish so that you may have
P more extensive control over the logic ISR-20 uses in record
P searches which include all records in category 3, or
P subcategory 1, or subcategory 2, or subcategory 3.
P If you do not like dots with your user-defined commands, just
P be sure that none of the user-defined commands are contained
P within any other user-defined command for the specific data
P base for which you define them.
P ENTERING INFORMATION ON THE DATA ENTRY PAGES
P Data entry on the data entry pages should be self-
P explanatory for most of the items. A few of the items are
P not explained by ISR-20 and, therefore, have to be
P explained.
P The command line is the blank where you enter commands for
P automatic data manipulation. You may use any combination of
P the PRE-DEFINED dot commands in this line. The dot commands
P which you defined are to be used on the next line, the
P "Category, subcategory" line.
P The dot command ".D." or ".E." will always completely erase
P the contents of the horizontal (bottom) column.
P The dot command ".2." or ".2" or "2." will place a "99" in
P the time interval field, making the record be classified in
P category 2. This may be done manually if desired.
P The dot command ".3." or ".3" or "3." will place a "0" in the
P time interval field, making the record be classified in
P category 3 EXCLUSIVELY. This may be done manually if
P desired.
P The dot command ".DD." or ".ED." will delete or erase both
P dates IF the time interval field is equal to "0" or "99".
P Either one of the above two commands may be used with this
P command, if necessary, in order to make the ".DD." or
P ".ED." commands operational. The dates may be deleted ONLY
P through the use of these commands.
P The dot command ".O." temporarily overrides the date check
P for records in category 1 until the next time the record is
P processed. This command will also work if entered
P immediately before either one of the date entries on the
P the date error correction pages.
P The dot command ".PO." permanently overrides the date check
P for records in category 1, except that it is canceled by
P the dot command ".OF." (for override off) or by anything
P which makes the time interval field equal to either "0" or
P "99". The ".PO." dot command may also be typed directly
P before either of the dates on the date error correction
P pages.
P You may use the dot commands which you defined to classify
P the records on the "Category, subcategories" line. You may
P use as many as you wish.
P Dot commands may always be used in any order, and they will
P work provided it is logical for them to work. They work
P ONLY for the record for which they are entered.
P Dot commands may use the dot of the preceding dot command.
P For instance, the three commands ".D.2.DD." are
P equivalent to ".D..2..DD.". The extra dots just take up
P space and keep you from getting as many commands on the
P line. In this case, the above commands will delete all data
P in the horizontal column, change the category of the record
P to category 2, and delete or erase both dates.
P Dot commands may be entered in either upper or lowercase
P letters.
P EXPLANATION OF THE DATE FUNCTIONS OF ISR-20
P At certain times ISR-20 displays the date in detail (name
P of the day of the week, name of the month, the day, and the
P year in four numerals) when this could very possibly reduce
P human error. If a mistake has been made, an opportunity is
P given to correct it. Both the date recognition and date
P checking system has been designed to automatically
P recognize 21st century dates when they are encountered.
P ISR-20 does several logical date checks on each set of
P dates within category 1. The beginning date is entered,
P the ending date is entered, and the month interval (1 to 98
P months) difference between the dates is entered. If the
P beginning date is further in the past than the month
P interval is from the present date, ISR-20 will consider the
P date to be in error. This is because it is normally
P illogical for a beginning date to be so far in the past
P that the computed ending date is also in the past. Why
P keep a record of it in category 1 ? Categories 2 or 3 are
P better suited to keep track of historical records. In
P addition, if the beginning date is even 1 day into the
P future from the present date, the date will be considered
P to be in error. This is because ISR-20 is designed to
P eliminate human error whenever possible, and the future is
P hard to predict. In this way, better control is maintained
P with respect to extremely critical items for which mistakes
P are to be kept to an absolute minimum. This applies only
P to category 1. You may store any dates in categories 2 and
P 3. In fact, they DO NOT even have to be beginning or ending
P dates. They may be any dates you desire.
P DATE CHECKING IN CATEGORY 1
P If the beginning date appears to be logical to ISR-20, the
P ending date is checked to see if it corresponds to the
P computed ending date. If it does not correspond, it is
P considered to be in error. It should be noted here that
P ISR-20 will accept an ending date which is usually up to
P about 5 days previous to the computed ending date, without
P indicating that an error has been made. One of the reasons
P this is provided is to allow you some freedom in being
P conservative with the ending date.
P Just before ISR-20 begins checking the records, it gives
P you a choice as to whether you want to correct any date
P errors as soon as they are found, or whether you want to
P correct them all at once after all the records being
P processed have been checked. If there are a multitude of
P records to be checked, it is to your advantage to choose
P the latter choice so that you may do something else while
P the computer is processing the records. When ISR-20
P processes records, it not only checks the dates of those
P records in category 1, but it carries out all the dot
P commands and category manipulations which you have
P instructed it to perform.
P Provision has also been made to override the date checking
P mechanism of those records in category 1. If you wish to
P enter a date in category 1 which appears to be illogical to
P ISR-20, you may either temporarily or permanently override
P the date checking mechanism for any individual record.
P This is discussed in greater detail in the dot command
P section above. Two different date overrides are available
P through both the normal data entry pages and the date error
P correction pages.
P Date errors are corrected through two different data entry
P pages specialized for date correction. One page is
P specialized toward "beginning date" correction, and the other
P page is specialized toward "ending date" or "next date"
P correction. However, either or both dates may be corrected
P through the use of either page. Both pages not only display
P all the information in the record, but they clearly point out
P what ISR-20 considers to be the error. On the "ending date"
P or "next date" correction page, ISR-20 will tell you the
P ending date it was expecting to see if the beginning date and
P time interval between the dates were correct. After you make
P any date correction, ISR-20 will check the dates for that
P record again to be sure that another error has not been made.
P On the general data entry pages, the date format is constant.
P If a date which does not exist is entered in a date entry
P blank on any of the general data entry pages, the cursor will
P remain in that date entry blank until the date entered is
P changed to a date which does not exist.
P For all other parts of the ISR-20 system (including the date
P correction pages), the dates may be entered using a number of
P different formats. You may experiment with different formats
P which you may think of, to see if they work. For example,
P "09/07/1929", "9/7/1929", "9/7/29", "9-7-29", and "9 7 29"
P are all equivalent. Use the format which suits you.
P While checking multiple records, ISR-20 may display a record
P counter. When ISR-20 encounters a date error, it may
P temporarilly interfere with the operation of the record
P counter and make it appear that certain records may have been
P skipped. NO RECORDS HAVE BEEN SKIPPED.
P A SPECIAL TYPE OF RECORD SEARCH
P It should be noted that selection "A", on the page which is
P entirely devoted to conditional record searches, is a very
P special type of date search. It does not look at actual
P dates, but rather does an internal number comparison with
P numbers generated and stored at the time each record was
P processed. It completely excludes all records in category
P 3 and includes all records in category 2. It also includes
P all records which exist in category 1 with date overrides.
P Using a number comparison method, it will also correctly
P access the proper records in category 1. It should also be
P noted that since this type of date search includes all
P records in category 2, it is unnecessary to choose this type
P of date search and also choose to "restrict the search to
P those records in category 2". Therefore, if you choose
P selection "A", ISR-20 will assume that you DO NOT wish to
P restrict the record search to those records in category 2.
P ID Code and Duplicate Record Recognition System
P To enhance the power of your ISR-20 system, you should
P avoid having column 2 having any data entries which are
P identical to those in column 3. The reason for this is
P that ISR-20 retains the capability to treat all data
P entries in columns 2 and 3 as ID codes, even if you have
P designated that information to be general information
P rather than ID codes. You may use this powerful feature
P for your benefit if you design your data base so that column
P 2 and column 3 will not have identical data entries. For
P example, if a number of the data entries in column 3 were
P the phrase "blue diamond", then you were to ask ISR-20 to
P look for all records with the ID code "blue diamond", ISR-
P 20 would find all records with the ID code "BLUE DIAMOND"
P in COLUMN 3, even if column 3 had previously been
P designated for general information. (If you had designated
P column 3 for ID code use, ISR-20 would have taken your data
P entry "blue diamond" and stored it as "BLUEDIAMOND", taking
P out all spaces. No matter how you have designed your
P data base, ISR-20 will always store data entries for columns
P 2 and 3 in the upper case format.) It should be noted here
P that all records with the ID code of "BLUE DIAMOND" in
P COLUMN 3 would be found. If column 2 also had certain data
P entries ("BLUE DIAMOND" in this case) which were identical
P to those in column 3, only those records corresponding to
P data entries of "blue diamond" in column 3 would be found.
P The reason for this is that when ISR-20 is directed to
P search for data in the form of ID codes, it first searches
P column 3. If it finds any matching ID codes in column 3,
P the assumption is made that all records with that ID code
P have been found. If no matching ID codes are found in
P column 3, ISR-20 searches column 2 for all matching ID
P codes. Therefore, even if you have designated column 2
P and/or column 3 for the storage of general information, you
P may direct ISR-20 to look at that information as though it
P were ID codes.
P It should be noted that you may ALWAYS make duplicate data
P entries in column 2. ONLY column 3 has the restriction
P that you may not enter duplicate data entries, and this
P restriction only applies if you have defined the particular
P data base which you are in to allow only singular data
P entries in column 3.
P Requirements for Record Storage in ISR-20
P ISR-20 will allow any particular record to exist within the
P system only if there is a data entry within column 1 of
P that record. The information in column 1 is that
P information which is placed in the top data entry line of
P any of the general data entry pages. If the information in
P column 1 of any record is deleted, ISR-20 will
P automatically delete that record.
P For the "singular record mode" there is also the
P requirement that a data entry be made in column 3, which
P corresponds to the information in the fifth line of any of
P the general data entry pages. IF NO INFORMATION IS ENTERED
P HERE (IF THE DATA BASE IS OPERATING IN THE "SINGULAR RECORD
P MODE") THAT RECORD CANNOT BE ADDED TO THE DATA BASE. In
P addition, you may NOT use a question mark as the first
P character of the data which you enter for column 3 (if you
P are in the singular record mode). The question mark is
P reserved for ISR-20 to indicate to you that you have entered
P a duplicate record (a duplicate data entry in column 3) while
P you are in the singular record mode.
P It should be noted that when ISR-20 checks records which
P you have just ADDED to one of the data bases, it may
P occasionally delete an empty record. This is necessary
P whenever you have generated an empty record as the last
P record in your record additions. If you try to print that
P record, ISR-20 will try to give you a printout, but the
P record information for that record will be missing, since
P there wasn't any information in the record. If you try to
P view that record on the screen, you will not be able to do
P so.
P OTHER CONSIDERATIONS
P If you decide that you have made a mistake while you are
P BACKING UP (NOT RESTORING) a data base, and you would like
P to escape from that procedure, you may press the "Ctrl-
P Break" keys with no damage to the data base on your fixed
P disk. However, the information content on your floppy
P diskette(s) will be only partially complete in that case and
P should not be used to restore the data base information to
P your fixed disk. IT SHOULD BE NOTED HERE THAT A SEPARATE
P FLOPPY DISK (OR A SEPARATE SET OF FLOPPY DISKS, DEPENDING ON
P THE SIZE OF THE PARTICULAR DATA BASE YOU ARE BACKING UP) IS
P REQUIRED FOR EACH INDIVIDUAL DATA BASE FOR WHICH YOU MAKE A
P BACKUP COPY.
P It is very unlikely that your ISR-20 system will ever crash
P or malfunction in any way. Great effort has been made to
P keep this from happening. One thing which will force a
P system crash is for your fixed disk to become completely
P full. If this happens, you MAY not have to restore the
P records to the data base if the crash occurred during any
P procedure other than a record modification procedure. If
P this happens, do the following things:
P 1. Reset the computer and reboot DOS.
P 2. Enter the ISR-20 system again.
P 3. Do not immediately enter the data base which you were
P in, but rather choose the letter selection "U"
P (Other options) from the main menu. Then choose
P selection "C" to rebuild the data base which you were
P in, just in case any index files were damaged in the
P system crash.
P 4. If you choose to be on the safe side, you may
P restore the data base information to your fixed disk
P from your backup diskette(s) instead of using step 3
P above. (If the crash occurs during a record
P modification procedure, you will have to restore the
P data base information from your backup diskette(s).)
P If you are a programmer and you import data from other
P data base files into the ISR-20 data base files, the associated
P index files will become effectively damaged. The simple way
P to overcome this problem is to follow step 3 above. The
P associated index files will then be automatically rebuilt.
P In this way, you may import data without causing system
P errors. You must then tell ISR-20 to modify all the records
P you imported and in that way make ISR-20 process all the
P imported records so that it may generate and store special
P numerical values in connection with the records. ISR-20
P depends on these numerical values to function properly.
P If you should make some mistake such as asking ISR-20 to do
P something very time consuming such as to modify many
P thousands of records simultaneously (even if you have
P enough disk space available for ISR-20 to carry out such a
P request), you should reset the computer and follow steps 1,
P 2, and 4 above (unless you have the time to wait).
P Printed output from ISR-20 is a maximum of 131 characters per
P line. Therefore, your printer must be capable of printing at
P least this number of characters per line.
P CAUTIONS
P 1. Do not break out of ISR-20 using any method other than
P the method provided in some of the menus to "QUIT." If
P you do, you may have to restore the information to the
P data base you were in, from the backup diskette(s) for
P that particular data base.
P 2. Protection has been programmed into the dBASE III Plus
P system to protect against breaking out of any dBASE III
P Plus program accidently when the "Esc" key is pressed.
P However, this protection will not always work properly.
P Therefore, the "Esc" key should never be used.
P 3. ISR-20 sends a maximum of 131 characters and spaces per
P printed line to your printer. If your printer uses
P paper which is 8.5 inches wide, it still may be able to
P satisfy this requirement of being able to print 131
P characters and spaces per printed line, if it can be
P set to a condensed print or small print mode.
P 4. When changing any particular data base within ISR-20
P FROM the DUPLICATE record mode TO the SINGULAR record
P mode, all systems in ISR-20 will work flawlessly except
P one. When you are in the singular record mode, ISR-20
P will assume that there are no duplicate records in the
P data base. In this mode, when you delete records,
P ISR-20 will give you the option to restore those
P records which you have just deleted. This option will
P work fine IF there are no duplicate records (duplicate
P column 3 data entries) in the set of records being
P modified. If there are duplicates and you utilize this
P option, there is a possibility that not all the deleted
P records will be restored. If this happens, the total
P number of records in the data base will NOT decrease.
P Instead, one or more records with duplicate data
P entries in column 3 will duplicate themselves so that
P they will become carbon copies of one of the other
P records with an identical data entry in column 3.
P 5. There is a possibility that ISR-20 could have a "system
P crash" if you allow your fixed disk to get so full that
P the amount of empty space on it for information storage
P is less than twice the size of your largest data base
P file in the directory on your fixed disk named "ISR-20".
P (Occasionally, even more space may be required.)
P Therefore, it wise to occasionally check the sizes of
P your data base files and the amount of available disk
P space. ISR-20 needs a lot of working space for several
P of the things it does. For instance, ISR-20 must build
P a temporary file holding the records you have selected
P when you choose to either view records on the screen or
P modify records. Therefore, a crash is most likely to
P happen when you are running out of disk space and you
P choose to either view ALL records simultaneously on the
P screen or modify ALL the records simultaneously which
P are in the data base which you are using.
P To generally avoid this problem, don't ask ISR-20 to
P let you view on the screen or modify more than several
P hundred records simultaneously. To print the records on
P the printer usually requires very little or no extra disk
P working space, regardless of how many records you tell
P ISR-20 to print. The exception to this is when you tell
P ISR-20 to search for records through the use of an ID
P code. In this latter case, printing the records will also
P require ISR-20 to build a temporary file holding the
P records you have selected.
P 6. ISR-20 requires more than 256K of random access memory
P for its operation. It is recommended that your computer
P system have at least 384K of RAM.
P 7. It is a good practice to have at least two backup copies
P of each data base. Separate floppy disks (or sets of
P floppy disks) must be used for each data base which you
P back up.
P ADDITIONAL NOTES FOR PROGRAMMERS
P All the data base files in the ISR-20 system have an ending
P of ".DBF". The data base file "DATA2.DBF" corresponds to
P selection "B". The same logical pattern follows through
P selection "T", which corresponds to "DATA20.DBF".
P In case you wish to import data into the ISR-20 system, you
P will need to know the names of the main data storage fields
P and certain system control fields.
P 1. "INST_TYPE"
P a. This is a general information variable, the
P contents of which appears in column 1 of the
P printout.
P b. Data must be entered into this field before record
P storage is allowed.
P 2. "SERIAL_NO"
P a. This is a general information variable, the
P contents of which appears in column 2 on the
P printout.
P b. This field is indexed.
P c. This field can be defined as an ID code field. In
P such case, there should be no spaces in front of
P or between the characters entered as data in this
P field.
P d. Duplicate data entries may ALWAYS be made in the
P various records, in this field.
P 3. "TVA_NO"
P a. This is a general information variable, the
P contents of which appear in column 3 of the
P printout.
P b. This field is indexed.
P c. This field can be defined as an ID code field. If
P it is, there should be no spaces in front of or
P between the characters entered as data in this
P field.
P d. Duplicate data entries in the various records in
P this field are forbidden ONLY IF the logic used in
P the particular data base forbids duplicate record
P entries. Also, in this case only, the first
P character in the field should not be a "?"
P (question mark).
P e. If the logic of the data base forbids duplicate
P record entries, data must be entered in this field
P for proper operation of ISR-20.
P f. All letters of the alphabet entered into this
P field should be upper case letters.
P 4. "CALIB_DATE"
P a. This is a date field exclusively, and the date
P entered into this field appears in column 4 of the
P printout.
P b. All records in category 1 (and all records in
P category 3 which are logically attached to
P category 1 type data processing) view this date as
P a "beginning date."
P c. For records in category 2 or 3, this field may
P contain any date (not necessarily a beginning
P date) within the bounds of date storage for ISR-
P 20. This field may be left blank for records in
P categories 2 or 3.
P 5. "CAL_DUE_DT"
P a. This is a date field exclusively, and the date
P entered into this field appears in column 5 of the
P printout.
P b. All records in category 1 (and all records in
P category 3 which are logically attached to
P category 1 type data processing) view this date as
P an "ending date."
P c. If a record is in categories 2 or 3, this date may
P be any date within the bounds of date storage for
P ISR-20. It does not have to be an ending date.
P For categories 2 and 3, this field may be left
P blank.
P PLEASE NOTE: The limits for date storage are 90 years in
P the past or the year 1900, whichever is the more recent
P date, and 9 years into the future or the year 1999,
P whichever is further into the future.
P 6. "LOCATION"
P a. This is a general information variable, the
P contents of which appears in column 6 on the
P printout.
P 7. "CALIB_INT"
P a. This is a one or two digit integer number variable
P only, the contents of which appear in column 7 of
P the printout IF a category 1 record (or a category
P 3 record which has category 1 type processing
P forced upon it) is printed.
P b. For category 1 records (and those records in
P category 3 which have category 1 type data
P processing forced upon them), this variable
P represents the monthly interval between the two
P dates.
P c. For category 2 and category 3 it is used as an
P internal control code which designates categories.
P If it is "99", the record is in category 2. If it
P is "0" (zero), the record is EXCLUSIVELY in
P category 3 and does NOT share the data processing
P of either categories 1 or 2.
P 8. "LAST_UPDAT"
P a. This date variable is controlled internally and
P represents the last date upon which the
P information in each record was processed and/or
P checked.
P 9. "REMARK"
P a. This is a general information variable, the
P contents of which appear as the 131 character
P horizontal "column" printed beneath the other
P information. If it is empty, it is not printed.
P 10. "SUBCATID"
P a. This is a general information CONTROL variable
P only. USER-DEFINED dot commands indicating the
P subcategory or subcategories, and/or the USER-
P DEFINED dot command joining category 3 records to
P the processing in either category 1 or category 2,
P are entered into this field.
P 11. "COMLINE"
P a. This is a general information CONTROL variable
P only. PREDEFINED dot commands are entered into
P this variable.
P After information has been imported into the above
P variables, you should direct ISR-20 to do the following
P things in the following order:
P 1. Rebuild the particular data base (choosing the "C"
P option from the menu) as though the data base was
P damaged (since the index files will be effectively
P damaged). This will automatically rebuild the
P index files.
P 2. Direct ISR-20 to modify all the records which you
P imported. If the records which you imported do not
P fit in any of the data search categories available
P within ISR-20, just have ISR-20 to modify all the
P records in the data base. In this way, the other
P control codes which ISR-20 uses to make logical
P decisions will be automatically generated and
P stored in certain other data base control
P variables. The special "ending date" search
P routine (selection "A" on the page which is
P entirely dedicated to various data search routines)
P will not function properly until the records have
P been processed. Before the records are processed,
P it is recommended that all data searches (those
P used to place all the records which you have just
P imported into the modification mode to be
P processed), be limited to data searches which do
P not involve searches based upon categories or
P subcategories of records.
P Procedure For Making a Large Single System Among Several
P Hard Disk Drives
P The index files associated with the various data bases use a
P particular system in how they are named. There are two major
P index files for each data base. The index files for
P DATA1.DBF are DATA1TV.NDX and DATA1SN.NDX. The index files
P for DATA2.DBF are DATA2TV.NDX and DATA2SN.NDX. The same
P system follows through to the twentieth data base DATA20.DBF
P which has the index files DATA20TV.NDX and DATA20SN.NDX. You
P may copy the desired data base files and their associated
P index files to the particular disks which you wish them to
P occupy. You must then delete the SAME data base files and
P their associated index files from the disk on which you
P installed the ISR-20 system. To make the system work, you
P must then define a PATH to those data base files when you
P enter the ISR-20 system to run the system. For example, if
P you installed the ISR-20 system on hard disk "C:" and you
P copied some of the data base files and their associated index
P files to the main directories of hard disks "D:" and "E:",
P you would enter the ISR-20 system by including the main
P directories of hard disk "D:" and "E:" in the path you
P define. In example, if the directory in which the dBASE III
P Plus system is located is a directory called "DATABASE", and
P the directory "DATABASE" branches directly off the main
P directory of disk "C:", then you would enter the ISR-20
P system with the "ISR" command followed by special syntax
P similar to the following:
P ISR C:\DATABASE;C:\ISR-20;C:\;D:\;E:\ 9
P The "9" in the syntax sets up a printer buffer of 63K in the
P computer memory. The "9", of course, is not a necessary part
P of the syntax. The default would be a "1" which sets up a
P buffer of 7K automatically (whether you typed the "1" or not).
P The printer buffer is not available for the public domain
P version.
P If this version is a compiled version, then the above command
P would be "ISR C:\ISR-20;C:\;D:\;E:\ 9".
P It is hoped that this system will prove to be very useful to
P you. The author would very much appreciate your comments
P concerning this system.
P Marty L. Jamieson